Godot Physics Bodies
PhysicsBodies in 2D
物理オブジェクトにはいくつか種類がある
StaticBody2D
RigitBody2D
KinematicBody2D
StaticBody2D
動かないものを作るための物理オブジェクト
壁、床、足場(プラットフォーム)に最適
シンプルな速度を適用することもできる
ベルトコンベアー効果とか
RigitBody2D
動くものを作るためのオブジェクト
2D物理エンジンにコントロールされる
gravity, friction などの振る舞いが実装されている
プレイヤーコントロールには向かない
動きをコントロールするのに、力を適用する -> 物理法則で動く
というステップを踏むので直感的に動かせない
サッカーボールとかに向く
KinematicBody2D
プレイヤーを動かすための物理オブジェクト
物理エンジンの影響を受けない
外部の力を使わず、直接的なコントロールができる
Palyerを作ってみる
KinematicBody2Dをシーンに追加してプレーヤーを作る
エラーメッセージが出る。 -> Physics Obj は必ずCollisionを持たねばならない
次の2つを追加
Add > Sprite , SpriteのTextureに、Playerのstand画像
Add > search: collision > CollisionShape2D 、 インスペクタで"CupsuleShape"を選択して大きさを調整(scaleはいじらない)
delta
func _process(delta):
フレームとフレームの間の時間を示す